package com.atguigu.day22.exer.codetest;

/**
 * @version 1.0
 * @Author 马冰
 * @Date 2024/11/28 11:24
 * @注释 通项公式如下：f(n)=n + (n-1) + (n-2) + .... + 1，
 * 其中n是大于等于5并且小于10000的整数，
 * 例如：f(5) = 5 + 4 + 3 + 2 + 1，
 * f(10) = 10 + 9 + 8 + 7+ 6 + 5 + 4 + 3 + 2 + 1，
 * 请用非递归的方式完成方法long f( int n)的方法体。
 */
public class CodeTest07 {
    public static void main(String[] args) {
        System.out.println("f(10) = " + f(10));
    }

    static long f(int n) {
        long res = 0L;
        String formula = "";
        if (n >= 5 && n < 10000) {
            formula += n;
            for (int i = n - 1; i >= 1; i--) {
                formula += "+" + i;
                res += i;
            }
            res += n;
        } else {
            System.out.println("数值必须在[5,10000)");
        }
        System.out.println("f("+ n +")=" + formula);
        return res;
    }
}
